#include <bits/stdc++.h>
using namespace std;
struct ABC{
    int o,no;
};
int n,m,a[100005],c[100005],K,T,X[300][4],re;
char x[30][500000];
int main(){
    freopen("arena.in","r",stdin);
    freopen("arena.out","w",stdout);
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    for(int i=1;i<=m;i++){
        cin>>c[i];
    }
    for(int i=1;pow(2,i)<=n;i++){
        K=i;
    }
    for(int i=1;i<=K;i++){
        for(int j=1;j<=pow(2,K-i);j++){
            cin>>x[i][j];
        }
    }
    cin>>T;
    for(int i=1;i<=T;i++){
        for(int j=0;j<4;j++){
            cin>>X[i][j];
        }
        for(int j=1;j<=n;j++){
            a[j]=a[j]^X[i][j%4];
        }
        for(int j=1;j<=m;j++){
            for(int l=1;l<=K;l++){
                if(c[j]<=pow(2,l)){
                    re=l;
                    break;
                }
            }
            for(int l=K-re;l<=K;l++){
                int cnt=0;
                for(int r=1;r<=pow(2,K-l);r++){
                    if(X[l][r]==0){

                    }
                }
            }
        }
    }
    return 0;
}
